<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<body>
  <div id="app"></div>
  <div id="app1"></div>
  <div id="app2"></div>
  <script src="../node_modules/@vue/reactivity/dist/reactivity.global.js"></script>
  <script>
    const { ref, computed, effect } = VueReactivity;
    
    const age = ref(16);

    const app = document.querySelector('#app');
    
    // effect(() => {
    //   app.innerHTML = age.value;
    // })

    const dAge = computed(() => {
      console.log('computed');
      return age.value + 10;
    })
    /*
      console.log('dage', dAge.value) // 第一次取值，会执行computed中的回调函数
      console.log('dage', dAge.value); // 再次计算属性值, 没有再次执行computed中的回调函数
      age.value = 100; // 更新之后
      console.log('dage', dAge.value) // 再取计算属性值，会再次执行computed中的回调函数
      console.log('dage', dAge.value) // 再取计算属性值，没有再次执行computed中的回调函数
    */


    
    effect(() => {
      console.log('dage', dAge.value) 
    })

    age.value = 1000;

    </script>
</body>
</html>